IEN (Is Everything Number) Interpreter

This is a sort of evolving process starting from the 
BrainF*** Interpreter > BQ Interpreter to EIN 
solves problem of how to do IF ELSE END IF stuff 
to IEN which adds unary functions to the mix.

All commands are a single command letter/symbol,
some are followed by numbers some are not.
All spaces, CR, LF, Tabs... are stripped before the
Interpreter goes to work executing commands. 

Number digits/symbols:
-.1234567890 are reserved for number values.
Note: - sign is just used for making a number value
negative; the ~ sign is actually used for the binary
operation of subtraction.

Command Characters:
cmdChars = "WC?ABZMFIENP[X]%^/*~+=<>()!&|"

These commands are followed by a number (n):
WC?ABZMF
 
Wn - Writes a number from memory(n), the cursor stays where it is.
Cn - writes Chr(n) and cursor stays put also, eg C32 prints a space.
?n - Gets Input and stores it into memory(n).
An - stores memory(n) into memory(1)
Bn - stores memory(n) into memory(2)

(All the Binary Operators %^/*~+=<>()!&| perform their assigned task with
memory(1) and memory(2) and store the results in memory(0). 
So you can see Memory(0-2) are specially reserved.)

Zn - stores n into memory(0)
Mn - takes memory(0) and stores it to memory(n)
(So a Zn Mn combination loads a variable with a value.) 

Fn - n will be the memory location for the result to go
Place the Function number to use in memory(1)
NOT = 0
RND = 1
INT = 2
Steps
1. Zn  set your function number
2. A0 set memory(1) from memory(0)
3. Bn set the memory location for value the function is to convert
4. Fn set in memory(n) the value

These commands are NOT followed by numbers: IENP[X] and all the operators.

IEN are for If Else and eNdif, I checks memory(0) to see if it should
seek E|N when memory(0) = 0 or stay with the next code if 
memory(0) <> 0. When E is hit from I block we look for N on same level. 
N is just there as marker.

P just starts next printing on next line.

[X] are the 3 command letters for loop structure:
[ is like DO and ] is like LOOP. X is for eXit, your only way out of the loop.

%^/*~+=<>()!&|  Operators: 
An Bn load memory(1) and memory(2) then an operator evaluates the
relation and stores the value in memory(0). W0, I, Mn all read memory(0).

14 Binary Operator Symbols:

6 Numeric Return Operators:
% is MOD or Modulus eg 10 % 3 = 1 
^ is power 10 ^ 3 = 1000
/ is divide 10 / 3 = .3333...
* is multiply 10 * 3 = 30
~ is subtraction NOT - used to make a number negative 10 ~ 3 = 7

          ***    Repeat use ~ for Subtraction NOT - sign. ***

+ is addition 10 + 3 = 13

8 Booleans return operators false = 0 ,  true 1 is set for when NOT = 0
= is Equal test returns 1 in memory(0) if true else 0
< is Less Than test,  10 < 3 returns 0 in memory(0)
> is Greater Than test, 10 > 3 returns 1 in memory(0)
( is Less Than or Equal test <=  10 ( 3 returns 0 in memory(0)
) is GreaterThan or Equal >= test, 10 ) 3 returns 1 in memory(0)
Notice curves of:  < (   and  > )  best one symbol to replace two?
! is for not, here it means NOT Equal <> or !=
& is for AND if memory(1) <> 0 AND memory(2) <> 0 then 1 in memory(0)
| is used for OR so if either memory(1) OR memory(2) <> 0 
then memory(0) =(set to) 1 else memory(0) =(set to) 0



